package com.nciae.config;

import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.security.oauth2.provider.token.TokenStore;
import org.springframework.security.oauth2.provider.token.store.InMemoryTokenStore;
import org.springframework.security.oauth2.provider.token.store.JwtAccessTokenConverter;

/**
 * 管理令牌
 * AuthorizationServerTokenServices接口定义了一些操作使得你对令牌进行一些必要的管理，令牌可以加载身份信息，包含了这个令牌
 * 相关的权限
 */
@Configuration
public class TokenConfig {

    private String SIGNING_KEY = "123456";

    @Bean
    public TokenStore tokenStore() {
        return new InMemoryTokenStore();
    }

    @Bean
    public JwtAccessTokenConverter accessTokenConverter() {
        JwtAccessTokenConverter converter = new JwtAccessTokenConverter();
        // 对称密匙，资源服务器使用该密匙进行验证
        converter.setSigningKey(SIGNING_KEY);
        return converter;
    }

}